namespace ext.menu
{
	using System;
	using System.Runtime.CompilerServices;
	using System.Html;
	using System.Collections;
	
	
	/// <summary>
	/// A menu containing a {@link Ext.ColorPalette} Component.  Notes:    Although not listed here, the constructor for this class
	/// accepts all of the configuration options of {@link Ext.ColorPalette}.  If subclassing ColorMenu, any configuration options for the ColorPalette must be
	/// applied to the initialConfig property of the ColorMenu.
	/// Applying {@link Ext.ColorPalette ColorPalette} configuration settings to
	/// this will not affect the ColorPalette&apos;s configuration.    *
	/// </summary>
	/// <htmlSummary>
	/// &lt;p&gt;A menu containing a {@link Ext.ColorPalette} Component.&lt;/p&gt;
	/// &lt;p&gt;Notes:&lt;/p&gt;&lt;div class=&quot;mdetail-params&quot;&gt;&lt;ul&gt;
	/// &lt;li&gt;Although not listed here, the &lt;b&gt;constructor&lt;/b&gt; for this class
	/// accepts all of the configuration options of &lt;b&gt;{@link Ext.ColorPalette}&lt;/b&gt;.&lt;/li&gt;
	/// &lt;li&gt;If subclassing ColorMenu, any configuration options for the ColorPalette must be
	/// applied to the &lt;tt&gt;&lt;b&gt;initialConfig&lt;/b&gt;&lt;/tt&gt; property of the ColorMenu.
	/// Applying {@link Ext.ColorPalette ColorPalette} configuration settings to
	/// &lt;b&gt;&lt;tt&gt;this&lt;/tt&gt;&lt;/b&gt; will &lt;b&gt;not&lt;/b&gt; affect the ColorPalette&apos;s configuration.&lt;/li&gt;
	/// &lt;/ul&gt;&lt;/div&gt; *
	/// </htmlSummary>
	/// <definedin>src\widgets\menu\ColorMenu.js</definedin>
	[ScriptName("ColorMenu")]
	[ScriptNamespace("Ext.menu")]
	[Imported()]
	public partial class ColorMenu : ext.menu.Menu
	{
		
		#region Constructors
		public ColorMenu(ext.menu.ColorMenu_Configuration config)
		{
		}
		
		/// <summary>Constructor</summary>
		public ColorMenu()
		{
		}
		#endregion
		
		#region Fields
		/// <definedin>src\widgets\menu\ColorMenu.js</definedin>
		[ScriptName("enableScrolling")]
		public bool EnableScrolling;
		
		/// <summary>
		/// Optional. A function that will handle the select event of this menu.
		/// The handler is passed the following parameters:   palette : ColorPalette The {@link #palette Ext.ColorPalette}.   color : String The 6-digit color hex code (without the # symbol).
		/// </summary>
		/// <htmlSummary>
		/// Optional. A function that will handle the select event of this menu.
		/// The handler is passed the following parameters:&lt;div class=&quot;mdetail-params&quot;&gt;&lt;ul&gt;
		/// &lt;li&gt;&lt;code&gt;palette&lt;/code&gt; : ColorPalette&lt;div class=&quot;sub-desc&quot;&gt;The {@link #palette Ext.ColorPalette}.&lt;/div&gt;&lt;/li&gt;
		/// &lt;li&gt;&lt;code&gt;color&lt;/code&gt; : String&lt;div class=&quot;sub-desc&quot;&gt;The 6-digit color hex code (without the # symbol).&lt;/div&gt;&lt;/li&gt;
		/// &lt;/ul&gt;&lt;/div&gt;
		/// </htmlSummary>
		/// <definedin>src\widgets\menu\ColorMenu.js</definedin>
		[ScriptName("handler")]
		public System.Delegate Handler;
		
		/// <summary>
		/// The scope (this reference) in which the {@link #handler}
		/// function will be called. Defaults to this ColorMenu instance.
		/// </summary>
		/// <htmlSummary>
		/// The scope (&lt;tt&gt;&lt;b&gt;this&lt;/b&gt;&lt;/tt&gt; reference) in which the &lt;code&gt;{@link #handler}&lt;/code&gt;
		/// function will be called. Defaults to this ColorMenu instance.
		/// </htmlSummary>
		/// <definedin>src\widgets\menu\ColorMenu.js</definedin>
		[ScriptName("scope")]
		public object Scope;
		
		/// <summary>False to continue showing the menu after a color is selected, defaults to true.</summary>
		/// <definedin>src\widgets\menu\ColorMenu.js</definedin>
		[ScriptName("hideOnClick")]
		public bool HideOnClick;
		
		/// <summary>An id to assign to the underlying color palette. Defaults to null.</summary>
		/// <htmlSummary>An id to assign to the underlying color palette. Defaults to &lt;tt&gt;null&lt;/tt&gt;.</htmlSummary>
		/// <definedin>src\widgets\menu\ColorMenu.js</definedin>
		[ScriptName("paletteId")]
		public string PaletteId;
		
		/// <definedin>src\widgets\menu\ColorMenu.js</definedin>
		[ScriptName("maxHeight")]
		public System.Number MaxHeight;
		
		/// <definedin>src\widgets\menu\ColorMenu.js</definedin>
		[ScriptName("scrollIncrement")]
		public System.Number ScrollIncrement;
		
		/// <summary>Fires when a color is selected from the {@link #palette Ext.ColorPalette}</summary>
		/// <definedin>src\widgets\menu\ColorMenu.js</definedin>
		[ScriptName("selectEventName")]
		public const string SelectEventName = "select";
		#endregion
		
		#region Properties
		/// <summary>The {@link Ext.ColorPalette} instance for this ColorMenu</summary>
		/// <definedin>src\widgets\menu\ColorMenu.js</definedin>
		[ScriptName("palette")]
		[IntrinsicProperty()]
		public ext.ColorPalette Palette
		{
			get
			{
				throw new System.Exception("Imported - not implemented");
			}
			set
			{
			}
		}
		#endregion
		
		#region Events
		/// <summary>Fires when a color is selected from the {@link #palette Ext.ColorPalette}</summary>
		/// <definedin>src\widgets\menu\ColorMenu.js</definedin>
		[ScriptName("select")]
		public event ext.auto.Delegate_ext_ColorPalette_And_System_String Select;
		#endregion
	}
}
